At present, a 3-level switching system is widely used in network communication. As shown in FIG. 1, the 3-level switching system includes the following chips:
(1) Switching memory chip (SM), used for implementing cell buffer, queue management and scheduling; and
(2) Switching crossbar chip (SC), used for arbitrating SM requests, implementing non-blocking space division switching, and processing and forwarding collected back pressure information.
As shown in FIG. 1, the SM includes two parts:
(1) SMi, including input and output ports. The SMi is mainly used for buffering the cells to be switched, managing queues, sending requests to the SC, and performing scheduling based on the arbitration signal from the SC.
(2) SMe, also including input and output ports. The SMe is used for buffering the cells switched by the SC, managing queues, reporting the back pressure information from the SMe to the SMi, and performing cell scheduling.
In the 3-level switching system, any SMe can receive cells from any SMi; and cells sent from any SMi can be switched to any SMe through the SC.
Thus, for reasonable scheduling of cells in the 3-level switching system, when each SMi sends cells to an SMe at the same time, the cells from each SMi need managing reasonably.
Besides, in the 3-level switching system, related flow control measures must be provided to ensure the normal progress of the whole cell transmission process.
As shown in FIG. 2, in the conventional 3-level switching system, back pressure control measures are taken to control the cell transmission process. The specific schemes are described as follows:
When an SMe detects that the idle buffer is smaller than a preset threshold, the SMe can notify the SMi of related information (also back pressure information). The SMi then saves the back pressure information in the cell header and sends it to the SC.
Upon receipt of the back pressure information in the cell header, the SC sends the back pressure information to each SMe.
Upon receipt of the back pressure information, each SMe notifies each SMi. After each SMi receives the back pressure information, those SMis that have sent requests stop sending requests.
When an SMe where back pressure (BP) occurs (SMe_BP) detects that the idle buffer is greater than a preset threshold, the SMe_BP notifies each SM of back pressure cancellation information through the SC in a way the same as the sending of back pressure information, as shown in FIG. 3. After each SM detects that the back pressure information is cancelled, SMis that have information to send re-send requests to the SC, or continue to send cells to the SMe through the SC.